/*
 * 
 *
 *
 */
package com.hboxs.asl.service;

import com.hboxs.asl.Page;
import com.hboxs.asl.Pageable;
import com.hboxs.asl.entity.*;

import java.math.BigDecimal;

/**
 * Service - 财务记录
 */
public interface FinancialRecordService extends BaseService<FinancialRecord, Long> {

    /**
     * 易问易答支出记录
     * @param question
     */
    void expenditureRecordQuestion(Question question, String remark);

    /**
     * 易问易答收入记录
     * @param question
     */
    void incomeRecordQuestion(Question question, String remark);

    /**
     * 课程支出记录
     * @param courseTrade
     */
    void expenditureRecordCourse(CourseTrade courseTrade, String remark);

    /**
     * 课程收入
     * @param courseTrade
     * @param member
     */
    void incomeRecordCourse(CourseTrade courseTrade, Member member, String remark);

    /**
     * 1元查看答案支出记录
     * @param yiYuanTrade
     */
    void expenditureRecordYiYuan(YiYuanTrade yiYuanTrade, String remark);

    /**
     * 1元查看答案收入记录
     * @param yiYuanTrade
     */
    void incomeRecordYiYuan(YiYuanTrade yiYuanTrade, String remark);

    /**
     * 直播送礼支出记录
     */
    void expenditureLiveGifts(Member member, BigDecimal money);

    /**
     * 直播送礼收入记录
     */
    void incomeLiveGifts(Member member, BigDecimal money);

    /**
     * 收入记录
     * @param member
     * @return
     */
    Page<FinancialRecord> incomeRecord(Pageable pageable, Member member);

    /**
     * 支出记录
     * @param member
     * @return
     */
    Page<FinancialRecord> expenditureRecord(Pageable pageable, Member member);

}
